Skip to content

Code improvements - #946

Merged
bouwew merged 4 commits into
mainfrom
optimize-presets
Nov 9, 2026
Merged

bouwew merged 4 commits into
mainfrom
optimize-presets

Conversation

@bouwew

@bouwew bouwew commented Nov 6, 2026 •

Copy link
Copy Markdown
Contributor

Summary by CodeRabbit

  • Bug Fixes
    • Preset temperature requests now update the selected heating or cooling value while preserving the existing value for the other setting. Invalid preset attributes continue to be rejected. This provides consistent behavior when adjusting either side of a preset, preventing the paired temperature from being unintentionally changed during the request.

@coderabbitai

coderabbitai Bot commented Nov 6, 2026 •

Copy link
Copy Markdown
Contributor

Explain Change →

Warning

Review limit reached

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Next included review available in 41 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

Learn how review limits work.

Review configuration:

Run configuration

  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 97815c4e-5032-4a86-85ad-7cc81f82db86
Commits

Reviewing files that changed from the base of the PR and between 73a99e3 and 9481276.

Files selected for processing: 2

  • CHANGELOG.md
  • plugwise/smile.py

No actionable comments were generated in the recent review.

Walkthrough

The preset-temperature write path now handles preset keys in the match statement. It reads only the unchanged, opposite setpoint before assigning the requested value. A comment identifies the subsequent in-memory domain-object update as being for testing an update.

Changes: Preset temperature writes

Layer / File(s) Summary
Dispatch and update preset setpoints
plugwise/smile.py
set_number handles preset keys in its match statement. set_preset_temperature reads only the opposite setpoint before assigning the requested value. A comment identifies the following domain-object update as being for testing an update.

Estimated code review effort: 2 (Simple) | ~5 minutes

Change: Refactor

Possibly related PRs

Suggested reviewers: compatech

Merge Risk: Minimal · previous review 73a99

The preset-write refactor has no established actionable defect and is mergeable subject to normal checks.

Pre-merge checks: Passed 4 · Inconclusive 1

Failed Failed checks: 1 inconclusive

Check name Status Explanation Resolution
Title check Inconclusive The title is generic and does not identify the preset-temperature changes. Use a specific title, such as "Refactor preset-temperature handling".
Passed Passed checks: 4 passed

Check name Status Explanation
Description Check Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentat…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentation-only edits and deletions within surviving functions are included; unchanged diff context and fully deleted functions are excluded. Analyzed 2 functions across 1 files.

Finishing Touches

Generate docstrings

  • Commit to this branch
  • Create a new PR
Generate unit tests (beta)

  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

Recent review info

Run configuration

  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: f3a67d40-c5e8-46c3-9799-5f3d82cbb6f2
Commits

Reviewing files that changed from the base of the PR and between b044b78 and 73a99e3.

Files selected for processing: 1

  • plugwise/smile.py

Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review.

@codecov

codecov Bot commented Nov 6, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 99.94%. Comparing base (b044b78) to head (9481276).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #946   +/-   ##
=======================================
  Coverage   99.94%   99.94%           
=======================================
  Files          21       21           
  Lines        3739     3739           
=======================================
  Hits         3737     3737           
  Misses          2        2           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@bouwew
bouwew marked this pull request as ready for review November 6, 2026 16:07
@bouwew
bouwew requested a review from a team as a code owner November 6, 2026 16:07
@sonarqubecloud

sonarqubecloud Bot commented Nov 6, 2026

Copy link
Copy Markdown

@bouwew
bouwew merged commit 3b2e3e2 into main Nov 9, 2026
18 checks passed
@bouwew
bouwew deleted the optimize-presets branch November 9, 2026 09:36

This branch was successfully deployed

2 active deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants